In a modern datacenter, multiple computing nodes are be connected together in a network to allow the nodes to share resources and information. The computing nodes can be connected in a network according to various topologies, including ring, star, tree, mesh, or a combination of these and/or other topologies. The implementation of the communication channels between the networked computing nodes can also be varied; for example, different nodes in the same network can be connected to the network using different data transmission technologies, such as Ethernet, optical fiber, or wireless technologies.
Recently, datacenters have been configured to allow individual computing nodes to utilize memory resources of other nodes. One type of node is a memory blade, which can be used to augment another node's memory capacity with remote memory that can be dynamically apportioned in response to changing memory capacity demand. Such remote memory is typically characterized by higher access latency. In addition, a conventional datacenter may lack the ability to apportion memory resources efficiently, given the wide range of possible topologies in which nodes can be arranged, while accounting for the differences in speed and capacity of the memory resources being apportioned. Such conventional datacenter may also accommodate only a single level of memory within each node.